<template>
  <div class="m-header">
    <h3>欢迎来到MarkerHub的博客</h3>
    <div class="block">
      <el-avatar :size="50" :src="user.avatar"></el-avatar>
      <div>{{user.username}}</div>
      <div class="m-action">
        <!-- <span><el-link href="/blogs" target="_blank">主页</el-link></span> -->
        <span><el-link href="/blogs">主页</el-link></span>

        <el-divider direction="vertical"></el-divider>
        <span><el-link type="success" href="/blog/add" :disabled="!hasLogin">发表博客</el-link></span>

        <el-divider direction="vertical"></el-divider>
        <span v-show="!hasLogin"><el-link type="primary" href="/login">登录</el-link></span>
        <span v-show="hasLogin"><el-link type="danger" @click="logout">退出</el-link></span>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  name: "Header",

  data() {
    return {
      user: {
        username: "请先登录",
        avatar: "https://cube.elemecdn.com/3/7c/3ea6beec64369c2642b92c6726f1epng.png"
      },
      hasLogin: false
    };
  },

  methods: {
      logout(){
          const _this = this;
          this.$axios.get("/logout",
          {
             headers: {
                "Authorization": localStorage.getItem("token")
             }
          }
          ).then(res =>{
              _this.$store.commit("REMOVE_INFO");
              _this.$router.push("/login");
          })
      }
  },
  created() {//页面创建就触发该方法
    if(this.$store.getters.getUserInfo.username){
        this.user.username = this.$store.getters.getUserInfo.username;
        this.user.avatar = this.$store.getters.getUserInfo.avatar;
        this.hasLogin = true;
    }
  }
};
</script>

<style scoped>
.m-header {
  max-width: 960px;
  margin: 0 auto;
  text-align: center;
}

.m-action {
  margin: 10px 0;
}
</style>